package com.Lacia.emsserver.enu;


/**
 * 故障、告警枚举
 * @author 万里花
 * @date 2024/6/7 10:26
 */
public enum FaultAlarm {
    FAN_FAULT("风扇故障", "故障", "fault", "0:正常，1:故障"),
    LIGHT_ROD_FAULT("防雷器故障", "故障", "fault", "0:正常，1:故障"),
    P_MODULE_TEM_UP_FAULT("功率模块过温故障", "故障", "fault", "0:正常，1:故障"),
    AUX_POWER_FAULT("15V辅助电源故障", "故障", "fault", "0:正常，1:故障"),
    GRID_OVER_FREQ("电网过频", "告警", "alarm", "0:正常，1:告警"),
    NETWORK_UNDER_FREQ("电网欠频", "告警", "alarm", "0:正常，2:告警"),
    GRID_PHASE_SEQ_FAULT("电网相序错误", "告警", "alarm", "0:正常，3:告警"),
    GRID_VOL_UNBALANCE("电网电压不平衡", "告警", "alarm", "0:正常，4:告警"),
    EP0_FAULT("EP0故障", "故障", "fault", "0:正常，1:故障"),
    IGBT_OVERCUR("IGBT硬件过流", "告警", "alarm", "0:正常，1:告警"),
    BUS_OV_FAULT("母线硬件过压", "告警", "alarm", "0:正常，1:告警"),
    POW_OC_LIMIT("功率模块逐波限流", "告警", "alarm", "0:正常，1:告警"),
    BALANCE_MODULE_OVERCUR("平衡模块硬件过流", "告警", "alarm", "0:正常，1:告警"),
    POWER_FAULT("24V电源故障", "故障", "fault", "0:正常，1:故障"),
    A_SOFT_OVERCUR("A相软件过流", "告警", "alarm", "0:正常，1:告警"),
    A_OVERCUR("A相过压故障", "故障", "fault", "0:正常，1:故障"),
    B_OVERCUR("B相过压故障", "故障", "fault", "0:正常，1:故障"),
    C_OVERCUR("C相过压故障", "故障", "fault", "0:正常，1:故障"),
    A_UNDERCUR("A相欠压故障", "故障", "fault", "0:正常，1:故障"),
    B_UNDERCUR("B相欠压故障", "故障", "fault", "0:正常，1:故障"),
    C_UNDERCUR("C相欠压故障", "故障", "fault", "0:正常，1:故障"),
    NODE_FAULT("电池干接点故障", "故障", "fault", "0:正常，1:故障"),
    OVERLOAD_FAULT("过载故障", "故障", "fault", "0:正常，1:故障"),
    B_SOFT_OVERCUR("B相软件过流", "告警", "alarm", "0:正常，1:告警"),
    C_SOFT_OVERCUR("C相软件过流", "告警", "alarm", "0:正常，1:告警"),
    GRID_CUR_UNBALANCE("电网电流不平衡", "告警", "alarm", "0:正常，1:告警"),
    GRID_PHASE_LOSS("电网缺相", "告警", "alarm", "0:正常，1:告警"),
    N_OVERCUR("N相过流", "告警", "alarm", "0:正常，1:告警"),
    BUS_OVERVOL("预充母线过压", "告警", "alarm", "0:正常，1:告警"),
    BUS_UNDERVOL("预充母线欠压", "告警", "alarm", "0:正常，1:告警"),
    UNCON_RE_BUS_OVERVOL("不控整流母线过压", "告警", "alarm", "0:正常，1:告警"),
    UNCON_RE_BUS_UNDERVOL("不控整流母线欠压", "告警", "alarm", "0:正常，1:告警"),
    RUN_BUS_OVERVOL("运行母线过压", "告警", "alarm", "0:正常，1:告警"),
    RUN_BUS_UNDERVOL("运行母线欠压", "告警", "alarm", "0:正常，1:告警"),
    BUS_UNBALANCE("正负母线不平衡", "告警", "alarm", "0:正常，1:告警"),
    BATT_UNDERVOL("电池欠压", "告警", "alarm", "0:正常，1:告警"),
    CUR_MODE_BUS_UNDERVOL("电流模式母线欠压", "告警", "alarm", "0:正常，1:告警"),
    BATT_OVERVOL("电池过压", "告警", "alarm", "0:正常，1:告警"),
    DC_PRECHA_OVERCUR("直流预充电过流", "告警", "alarm", "0:正常，1:告警"),
    DC_OVERCUR("直流过流", "告警", "alarm", "0:正常，1:告警"),
    BALA_MODULE_SOFT_OVERCUR("平衡模块软件过流", "告警", "alarm", "0:正常，1:告警"),
    BATT_REVERSE_FAULT("电池反接故障", "故障", "fault", "0:正常，1:告警"),
    PRECHARGE_TIMEOUT("预充电超时", "告警", "alarm", "0:正常，1:告警"),
    A_PRECHA_OVERCUR("预充电A相过流", "告警", "alarm", "0:正常，1:告警"),
    B_PRECHA_OVERCUR("预充电B相过流", "告警", "alarm", "0:正常，1:告警"),
    C_PRECHA_OVERCUR("预充电C相过流", "告警", "alarm", "0:正常，1:告警"),
    AD_SAMPLING_FAULT("AD采样零漂故障", "故障", "fault", "0:正常，1:故障"),
    BATT_SYSTEM_FAULT("BMS电池系统故障", "故障", "fault", "0:正常，1:故障"),
    STS_COMM_FAULT("STS通讯故障", "故障", "fault", "0:正常，1:故障"),
    BMS_COMM_FAULT("BMS通信故障", "故障", "fault", "0:正常，1:故障"),
    CAN_COMM_FAULT("从模块CAN通讯故障", "故障", "fault", "0:正常，1:故障"),
    EMS_COMM_FAULT("EMS通讯故障", "故障", "fault", "0:正常，1:故障"),
    PRECHA_RELAY_CLOSED("预充电继电器闭合", "告警", "alarm", "0:正常，1:告警"),
    PRECHA_RELAY_DISCONN("预充电继电器断开", "告警", "alarm", "0:正常，1:告警"),
    RELAY_CLOSED_STATE("预充电继电器闭合状态", "告警", "alarm", "0:正常，1:告警"),
    RELAY_DISCON_STATE("预充电继电器断开状态", "告警", "alarm", "0:正常，1:告警"),
    MAIN_RELAY_CLOSED("主继电器闭合", "告警", "alarm", "0:正常，1:告警"),
    MAIN_RELAY_DISCON("主继电器断开", "告警", "alarm", "0:正常，1:告警"),
    MAIN_RELAY_CLOSED_STATE("主继电器闭合状态", "告警", "alarm", "0:正常，1:告警"),
    MAIN_RELAY_DISCON_STATE("主继电器断开状态", "告警", "alarm", "0:正常，1:告警"),
    AC_MAIN_RELAY_ADHESION_FAULT("交流主继电器粘连故障", "故障", "fault", "0:正常，1:故障"),
    DC_RELAY_OPEN("直流继电器开路", "告警", "alarm", "0:正常，1:告警"),
    A_INVERTER_VOL_OVERVOL("逆变电压A相过压", "告警", "alarm", "0:正常，1:告警"),
    B_INVERTER_VOL_OVERVOL("逆变电压B相过压", "告警", "alarm", "0:正常，1:告警"),
    C_INVERTER_VOL_OVERVOL("逆变电压C相过压", "告警", "alarm", "0:正常，1:告警"),
    GRID_ISLAND("电网孤岛", "告警", "alarm", "0:正常，1:告警"),
    SYSTEM_RESONANCE("系统谐振", "告警", "alarm", "0:正常，1:告警"),
    SOFT_OVERCOL_OVERCUR("软件过压过流", "告警", "alarm", "0:正常，1:告警"),
    HIGH_VOL_CROSS_TIMEOUT("高电压穿越超时", "告警", "alarm", "0:正常，1:告警"),
    A_INVERTER_VOLTAGE_UNDERVOL("逆变电压A相欠压", "告警", "alarm", "0:正常，1:告警"),
    B_INVERTER_VOLTAGE_UNDERVOL("逆变电压B相欠压", "告警", "alarm", "0:正常，1:告警"),
    C_INVERTER_VOLTAGE_UNDERVOL("逆变电压C相欠压", "告警", "alarm", "0:正常，1:告警"),
    OFF_LINE_NO_SYNC_SIGNAL("离网无同步信号", "告警", "alarm", "0:正常，1:告警"),
    OFF_LINE_SHORT_CIRCUIT("离网短路故障", "故障", "fault", "0:正常，1:故障"),
    LOW_VOL_CROSS_TIMEOUT("低电压穿越超时", "告警", "alarm", "0:正常，1:告警"),
    CONN_FAULT("连接故障", "故障", "fault", "0:正常，1:故障"),
    BALA_MODULE_OVER_TEM("平衡模块过温", "告警", "alarm", "0:正常，1:告警"),
    SYS_FIRE_ALARM_FAULT("系统火警故障", "故障", "fault", "0:正常，1:故障"),
    COMM_FAULT("通讯故障", "故障", "fault", "0:正常，1:故障"),
    ALARM_LV_SUMS("告警汇总等级", "告警", "alarm", "0:正常，1:轻度，2:中度，3:重度");

    private final String name;
    private final String type;
    private final String outputParam;
    private final String valueRange;

    FaultAlarm(String name, String type, String outputParam, String valueRange) {
        this.name = name;
        this.type = type;
        this.outputParam = outputParam;
        this.valueRange = valueRange;
    }

    public String getName() {
        return name;
    }

    public String getType() {
        return type;
    }

    public String getOutputParam() {
        return outputParam;
    }

    public String getValueRange() {
        return valueRange;
    }
}
